Maven 프로젝트 생성
1. Maven설치
- MAVEN_HOME/bin 디렉토리를 path에 등록한다.
- Command 창을 새로 실행시켜 mvn 명령이 실행되는지 확인해 보자.
2. Maven 프로젝트 생성
2.1 mvn 명령어를 이용하여 생성하기
- JAVA프로젝트와 WEB프로젝트를 생성하는 예이다.
-- JAVA 프로젝트 생성
mvn archetype:generate -DgroupId=com.oracleclub.study -DartifactId=oracleclub-java-project -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
-- 웹 프로젝트 생성
mvn archetype:generate -DgroupId=com.oracleclub.study -DartifactId=oracleclub-web-project -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
- 아키타입
- 메이븐에서는 기본적인 프로젝트 구조를 미리 정의하여 제공하는데 이를 아키타입이라고 한다.
- 기본적으로 제공하는 아키타입과 사용자들이 아키타입을 정의하여 제공할 수도 있다.
- Archetypes List 보기
2.2 이클립스를 이용하여 생성하기
- File > New > Maven > Maven Project를 선택
- select project name and location
- maven-archetype-webapp 프로젝트 선택
3. Maven 디렉토리 구조
3.1 Maven 프로젝트의 기본 디렉토리 구조
- 아래는 Maven 프로젝트의 기본적인 디렉토리 구조이다.
pom.xml
src/main/java
src/main/webapp/WEB-INF
src/main/webapp/WEB-INF/web.xml
src/main/resources
src/test/java
src/test/resources
target/classes
target/test-classes
- Maven은 디폴트로 구현 소스와 테스트 소스를 분리하여 개발이 가능하도록 지원하고 있다.
- 프로젝트를 빌드할 경우 target 디렉토리에 컴파일된 클래스가 위치하게 된다.
- src/main/java 디렉토리의 구현 코드는 target/classes에 컴파일 된다.
- src/main/test 디렉토리의 테스트 코드는 target/test-classes에 컴파일 된다.
- 빌드를 통하여 최종적으로 생성된 jar 파일은 target/classes의 구현 코드만 jar로 압축한다.
3.2 스터디 예제소소의 기본 디렉토리 구조
pom.xml
src/main/java
src/main/resources
src/test/java
src/test/resources
target/classes
target/test-classes
webapps/WEB-INF
webappsWEB-INF/web.xml
filter
lib